home *** CD-ROM | disk | FTP | other *** search
/ The Fatted Calf / The Fatted Calf.iso / Unix / Shells / tcsh / Source / config / config.sgi < prev    next >
Encoding:
Text File  |  1994-02-21  |  4.6 KB  |  206 lines

  1. /*
  2.  * config.h -- configure various defines for tcsh
  3.  *
  4.  * All source files should #include this FIRST.
  5.  *
  6.  * Edit this to match your system type.
  7.  */
  8.  
  9. /****************** System dependant compilation flags ****************/
  10. /*
  11.  * POSIX    This system supports IEEE Std 1003.1-1988 (POSIX).
  12.  */
  13. #ifdef mips
  14. # define POSIX
  15. #else
  16. # undef POSIX
  17. #endif
  18.  
  19. /*
  20.  * POSIXJOBS    This system supports the optional IEEE Std 1003.1-1988 (POSIX)
  21.  *        job control facilities.
  22.  */
  23. #undef POSIXJOBS
  24.  
  25. /*
  26.  * POSIXSIGS    Use the POSIX signal facilities to emulate BSD signals.
  27.  */
  28. #undef POSIXSIGS
  29.  
  30. /*
  31.  * VFORK    This machine has a vfork().  
  32.  *        It used to be that for job control to work, this define
  33.  *        was mandatory. This is not the case any more.
  34.  *        If you think you still need it, but you don't have vfork, 
  35.  *        define this anyway and then do #define vfork fork.  
  36.  *        I do this anyway on a Sun because of yellow pages brain damage,
  37.  *        [should not be needed under 4.1]
  38.  *        and on the iris4d cause    SGI's fork is sufficiently "virtual" 
  39.  *        that vfork isn't necessary.  (Besides, SGI's vfork is weird).
  40.  *        Note that some machines eg. rs6000 have a vfork, but not
  41.  *        with the berkeley semantics, so we cannot use it there either.
  42.  */
  43. #undef VFORK
  44.  
  45. /*
  46.  * BSDJOBS    You have BSD-style job control (both process groups and
  47.  *        a tty that deals correctly
  48.  */
  49. #ifdef mips
  50. # define BSDJOBS
  51. #else
  52. # undef BSDJOBS
  53. #endif
  54.  
  55. /*
  56.  * BSDSIGS    You have 4.2-style signals, rather than USG style.
  57.  *        Note: POSIX systems should not define this unless they
  58.  *        have sigvec() and friends (ie: 4.3BSD-RENO, HP-UX).
  59.  */
  60. #undef BSDSIGS
  61.  
  62. /*
  63.  * BSDTIMES    You have BSD-style process time stuff (like rusage)
  64.  *        This may or may not be true.  For example, Apple Unix
  65.  *        (OREO) has BSDJOBS and BSDSIGS but not BSDTIMES.
  66.  */
  67. #ifdef mips
  68. # define BSDTIMES
  69. #else
  70. # undef BSDTIMES
  71. #endif
  72.  
  73. /*
  74.  * BSDLIMIT    You have BSD-style resource limit stuff (getrlimit/setrlimit)
  75.  */
  76. #ifdef mips
  77. # define BSDLIMIT
  78. #else
  79. # undef BSDLIMIT
  80. #endif
  81.  
  82. /*
  83.  * BSDNICE    Your system uses setpriority() instead of nice, to
  84.  *        change a processes scheduling priority
  85.  */
  86. #ifdef mips
  87. # define BSDNICE
  88. #else
  89. # undef BSDNICE
  90. #endif
  91.  
  92. /*
  93.  * TERMIO    You have struct termio instead of struct sgttyb.
  94.  *         This is usually the case for SYSV systems, where
  95.  *        BSD uses sgttyb. POSIX systems should define this
  96.  *        anyway, even though they use struct termios.
  97.  */
  98. #define TERMIO
  99.  
  100. /*
  101.  * SYSVREL    Your machine is SYSV based (HPUX, A/UX)
  102.  *        NOTE: don't do this if you are on a Pyramid -- tcsh is
  103.  *        built in a BSD universe.
  104.  *        Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
  105.  *        you are running. Or set it to 0 if you are not SYSV based
  106.  */
  107. #ifdef mips
  108. # ifdef _SYSTYPE_SVR4
  109. #  define SYSVREL    4
  110. # else
  111. #  define SYSVREL    3
  112. # endif /* _SYSTYPE_SVR4 */
  113. #else
  114. /* 
  115.  * For the 3000:
  116.  * We may not technically be compliant, and I don't know whether we are
  117.  * SVR1 or SVR2.  We're pretty System V-ish, though, so we won't say 0.
  118.  * We'll guess 1.  There are no checks for SYSVREL <= 1 vs. SYSVREL >= 2 at
  119.  * current writing anyway. 
  120.  */
  121. # define SYSVREL    1
  122. #endif
  123.  
  124. /*
  125.  * YPBUGS    Work around Sun YP bugs that cause expansion of ~username
  126.  *        to send command output to /dev/null
  127.  */
  128. #undef YPBUGS
  129.  
  130. /*
  131.  * SIGVOID    Define this if your signal handlers return void.  On older
  132.  *        systems, signal returns int, but on newer ones, it returns void.
  133.  */
  134. #ifdef mips
  135. # define SIGVOID 
  136. #else
  137. # undef SIGVOID 
  138. #endif
  139.  
  140. /*
  141.  * HAVEDUP2    Define this if your system supports dup2().
  142.  */
  143. #ifdef mips
  144. # define HAVEDUP2
  145. #else
  146. # undef HAVEDUP2
  147. #endif
  148.  
  149. /*
  150.  * HAVEUTMPX    Define if you have extended utmp (utmpx).
  151.  *        (common for svr4 systems)
  152.  * UTHOST    Does the utmp file have a host field?
  153.  */
  154. #if SYSVREL > 3
  155. # define HAVEUTMPX
  156. # define UTHOST
  157. #else
  158. # undef UTHOST
  159. #endif /* SVR4 */
  160.  
  161.  
  162. /*
  163.  * DIRENT    Your system has <dirent.h> instead of <sys/dir.h>
  164.  */
  165. #define DIRENT
  166.  
  167. /*
  168.  * ECHO_STYLE    Optionally change the behavior of the builtin echo
  169.  *        BOTH_ECHO: Support both bsd options (-n) and sysv escapes (\nnn)
  170.  *        BSD_ECHO:  Support only -n
  171.  *        SYSV_ECHO: Support only sysv escapes (\nnn)
  172.  *        NONE_ECHO: Pure echo.
  173.  */
  174. #define ECHO_STYLE BOTH_ECHO    /* Both BSD and SYSV options */
  175.  
  176. /****************** local defines *********************/
  177. #ifdef mips
  178. /*
  179.  * IRIS4D    You are running on an Iris 4D
  180.  */
  181. # define IRIS4D
  182.  
  183. /*
  184.  * IRIX3_3    You are running IRIX 3.3 (or later)
  185.  */
  186. # define IRIX3_3
  187. #endif
  188.  
  189. #ifdef m68000
  190. /*
  191.  * IRIS3D    You are running on an Iris 3000 series
  192.  */
  193. # define IRIS3D
  194. #endif
  195.  
  196. /*
  197.  * lookupname/namei ignores tailing '/' on files
  198.  */
  199. #define NAMEI_BUG
  200.  
  201. /****************** configurable hacks ****************/
  202. /* have been moved to config_f.h */
  203. #include "config_f.h"
  204.  
  205. #undef NLS
  206.